Hibernation allows computer systems to enter a limited activity mode in which the system hardware is “resting”. During hibernation, system hardware is configured to await an input which triggers the hardware to return to normal computing. During hibernation, active processes may be suspended until an event causes the system to become active or awaken. For example, a laptop computer may hibernate to conserve battery life when the laptop lid is closed. In other instances, desktop systems may hibernate after a designated period of inactivity. In the foregoing manner, the computer system may spin down the hard drive and shut down or otherwise incapacitate services in order to minimize system wear, save energy and so on.
When a computing system goes into a low activity mode, the system is usually awakened by a user entering an input (such as a keystroke) or the system receiving some other input (a laptop lid opening) which causes the system to become active or awaken from the low activity state. For instance, a computer awakening may result in the system running the previously active applications and services.
Hibernation may raise security issues, as a system resuming operation or coming out of hibernation may permit unauthorized access to programs and data which were active prior to the system entering the lower activity state. In addition, unauthorized access may be attempted when the hibernation data is stored on disk. If, for instance, a computer resumes activity after hibernation, this action may permit unauthorized access. When coming out of hibernation, the system may awaken before overall OS security architecture is available.